VT-d: ensure zapping ACPI DMAR signature in acpi_parse_dmar
authorKeir Fraser <keir.fraser@citrix.com>
Thu, 11 Feb 2010 19:48:58 +0000 (19:48 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Thu, 11 Feb 2010 19:48:58 +0000 (19:48 +0000)
VT-d is owned by Xen hypervisor. Xen zaps ACPI DMAR signature to
prevent dom0 to use VT-d. This patch changes the direct return when
DMAR width is zero, instead zaps ACPI DMAR signature before return.

Signed-off-by: Weidong Han <weidong.han@intel.com>
xen/drivers/passthrough/vtd/dmar.c

index 544d0115b8b93db9d5dab80dadeae2ba3ebfc748..5ed4877b1d5399e8004ab24d67dfcb736427e4cd 100644 (file)
@@ -623,7 +623,8 @@ static int __init acpi_parse_dmar(struct acpi_table_header *table)
     if ( !dmar->width )
     {
         dprintk(XENLOG_WARNING VTDPREFIX, "Zero: Invalid DMAR width\n");
-        return -EINVAL;
+        ret = -EINVAL;
+        goto out;
     }
 
     dmar_host_address_width = dmar->width + 1;